#include "LinkBase.h"
#include <iostream>
#include "lib.h"

using namespace controller;

// 打印数据包数据,如果是ascii使用ascii打印，如果不是ascii，直接转为16进制打印
std::string LinkBase::dump_buffer(LinkBuffer *buf)
{
    if (is_hex)
    {
        return LIB::charArrayToHexString((const unsigned char *)buf->data(), buf->size());
    }
    else
    {
        return std::string((const char *)buf->data());
    }
}

void LinkBase::set_dump_buffer_type(bool _hex = false) // 默认显示为 ascii
{
    std::cout << this->name() << "显示修改为:" << ((_hex == false) ? ("ascii") : ("Hex")) << std::endl;
    is_hex = _hex;
}